		//  数组组合

		1.//	按 $primarykey, $parentkey 来组合当前数据,最终为一个数组没有子数组
		//	$primarykey 类似数据库的主键， $parentkey 指向这个主键表示为主键的child
		//	child 结点添加到 parent 后面，
		//	层子结点就自动给其中的name结点添加 几个 -- 标识
		//	添加一个level字段标识层数
		//
		public function terms_sort($array=null, $pid=0, $level=0, $primarykey, $parentkey)
		{
			$arr = array();
			foreach ($array as $value) {
	            if ($value["$parentkey"] == $pid){
	            	$prefix = '';
	        		for($i=$level;$i>0;$i--) $prefix .= '--&nbsp;';

	            	$value['level'] = $level;
	            	$value['name'] = $prefix.$value['name'];
	            	$arr[] = $value;
	                $childarr = $this->terms_sort($array, $value["$primarykey"],$level+1, $primarykey, $parentkey); 
					$arr = array_merge($arr, $childarr);
					p($arr);
	            }
	        }
	        return $arr;
		}



		2./**
	     * 递归重组节点信息 这个子结点作为一个数组放到child下面
	     * 
	     */
	  	function node_merge($node,$access=null,$pid=0){
	        $arr = array();
	        foreach ($node as $value) {
	            if (is_array($access)) {
	                $value['access'] = in_array($value['id'], $access)?1:0;
	            }
	            if ($value['pid'] == $pid) {
	                $value['child'] = node_merge($node, $access, $value['id']);
	                $arr[] = $value;
	            }
	        }
	        return $arr;
    	}